- 
          
- 
                Notifications
    You must be signed in to change notification settings 
- Fork 926
          build: add tsdoc-doctest ESLint rule
          #8039
        
          New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
tsdoc-doctest ESLint ruletsdoc-doctest ESLint rule
      15a3eab    to
    f723627      
    Compare
  
            
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/invalid.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/unvalidated.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/unvalidated.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/valid.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/valid.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/test/fixtures/valid.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/README.md
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/README.md
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/README.md
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/add_package_to_scope.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/add_package_to_scope.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
              
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
      Signed-off-by: Athan <[email protected]>
Signed-off-by: Athan <[email protected]>
Signed-off-by: Athan <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Only a few comments remain wrt the main implementation.
| /stdlib merge | 
…script-doctest-linting
---
type: pre_commit_static_analysis_report
description: Results of running static analysis checks when committing changes.
report:
  - task: lint_filenames
    status: passed
  - task: lint_editorconfig
    status: passed
  - task: lint_markdown
    status: na
  - task: lint_package_json
    status: na
  - task: lint_repl_help
    status: na
  - task: lint_javascript_src
    status: passed
  - task: lint_javascript_cli
    status: na
  - task: lint_javascript_examples
    status: na
  - task: lint_javascript_tests
    status: na
  - task: lint_javascript_benchmarks
    status: na
  - task: lint_python
    status: na
  - task: lint_r
    status: na
  - task: lint_c_src
    status: na
  - task: lint_c_examples
    status: na
  - task: lint_c_benchmarks
    status: na
  - task: lint_c_tests_fixtures
    status: na
  - task: lint_shell
    status: na
  - task: lint_typescript_declarations
    status: passed
  - task: lint_typescript_tests
    status: na
  - task: lint_license_headers
    status: passed
---
    There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This PR is being reviewed by Cursor Bugbot
Details
Your team is on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle for each member of your team.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
        
          
                .../tsdoc-declarations-doctest/test/fixtures/packages/@stdlib/ndarray/vector/int32/lib/index.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
      ---
type: pre_commit_static_analysis_report
description: Results of running static analysis checks when committing changes.
report:
  - task: lint_filenames
    status: passed
  - task: lint_editorconfig
    status: passed
  - task: lint_markdown
    status: na
  - task: lint_package_json
    status: na
  - task: lint_repl_help
    status: na
  - task: lint_javascript_src
    status: na
  - task: lint_javascript_cli
    status: na
  - task: lint_javascript_examples
    status: na
  - task: lint_javascript_tests
    status: passed
  - task: lint_javascript_benchmarks
    status: na
  - task: lint_python
    status: na
  - task: lint_r
    status: na
  - task: lint_c_src
    status: na
  - task: lint_c_examples
    status: na
  - task: lint_c_benchmarks
    status: na
  - task: lint_c_tests_fixtures
    status: na
  - task: lint_shell
    status: na
  - task: lint_typescript_declarations
    status: passed
  - task: lint_typescript_tests
    status: na
  - task: lint_license_headers
    status: passed
---
            
          
                lib/node_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/main.js
          
            Show resolved
            Hide resolved
        
      | } | ||
| interfaceMatch = sourceText.match( RE_DECLARE_VAR_INTERFACE ); | ||
| if ( interfaceMatch ) { | ||
| // Make the function available under both the variable and interface names: | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a little bit odd, but I understand why this is being done this way. Namely, ctor is a dummy variable name in the example used to illustrate the need for this check. What we actually care about is Int32Vector.
My sense is this could break at some point, where we double alias, which then clashes with a real alias. But we can cross that bridge when we get there.
        
          
                ...e_modules/@stdlib/_tools/eslint/rules/tsdoc-declarations-doctest/lib/add_package_to_scope.js
              
                Outdated
          
            Show resolved
            Hide resolved
        
      Signed-off-by: Athan <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Let's get this in, and we can iterate from here.
Description
This pull request:
tsdoc-doctestESLint rule for for linting return annotations in TSDoc example code inside of TypeScript declaration files.Related Issues
This pull request:
Questions
No.
Other
No.
Checklist
@stdlib-js/reviewers